package com.dd.cloud.user.DTO.kz;

import com.dd.cloud.common.annotate.validation.*;
import com.dd.cloud.user.DTO.common.CommonReqDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;
import java.util.List;

/**
 * 上传同步药房门店数据
 *
 * @author Lx
 * @version 1.0
 * @date 2023/8/16
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class KzSyncPharmacyDataDTO extends CommonReqDTO {

    /**
     * 药房门店列表
     */
    private List<KzSyncPharmacyData> pharmacyDataList;

    @Data
    public static class KzSyncPharmacyData {
        /**
         * 药房门店id
         */
        @NotBlank(message = "药房门店id不能为空")
        @Length(max = 32, message = "药房门店id最大长度32位")
        private String storeId;

        /**
         * 药房门店名字
         */
        @Name(begin = "药房门店名字")
        private String name;

        /**
         * 省份
         */
        @Name(begin = "省份", required = false)
        private String province;

        /**
         * 城市
         */
        @Name(begin = "城市", required = false)
        private String city;

        /**
         * 区县
         */
        @Name(begin = "区县", required = false)
        private String district;

        /**
         * 药房详细地址
         */
        @Addr(begin = "药房详细地址", required = false)
        private String addr;

        /**
         * 药房管理员-负责人邮箱
         */
        @Email(required = false)
        private String adminEmail;

        /**
         * 药房管理员-负责人电话
         */
        @Phone(required = false)
        private String adminPhone;

        /**
         * 药房管理员-负责人名字
         */
        @Name(required = false, begin = "负责人名字")
        private String adminName;

        /**
         * 备注
         */
        @Desc(required = false, begin = "备注")
        private String remark;

        /**
         * 药房类型 默认私有
         */
        private Integer type = 2;
    }
}
